package main
import (

    "fmt"
)
func fibonacci2(c, quit chan int) {
    x, y := 1, 1
    for {
        select {
        case c <- x :
            x, y =y, x+y
        case <-quit:
            fmt.Println("quit..")
            return
        }
    }
}

func main() {
    c := make(chan int)
    quit := make(chan int)


    go fibonacci2(c, quit)

    for i := 0; i<10; i++ {
        fmt.Println(<-c)
    }
    quit <- 0

}
